{extend name="base" /}
{block name="css"}
{css href="__AD_CSS__/datascreen.css"}
{/block}
{block name="body"}
<div id="app">
    <header>
        <h1>
            <div class="screen">
                <i class="layui-icon layui-icon-play" @click="fullScreen" v-if="showstatus"></i>
                <i class="layui-icon layui-icon-pause" @click="exitFullScreen" v-if="!showstatus"></i>
            </div>
            {$config.sitename|default=$Think.lang.Title}大数据统计
            <div id="showtime">{{nowTime}}</div>
        </h1>
    </header>
    <section>
    <div class="main">
        <div class="column">
            <div class="panel">
                <div class="panel-footer">
                </div>
                <div class="bar">
                    <h2>就业行业</h2>
                    <div class="chart" id="a">
                    </div>
                </div>
            </div>
            <div class="panel">
                <div class="panel-footer">
                </div>
                <div class="line">
                    <h2>人员变化 
                        <a href="javascript:;" @click="checks(0)">2020 </a>
                        <a href="javascript:;" @click="checks(1)">2021 </a>
                    </h2>
                    <div class="chart">
                    </div>
                </div>
            </div>
            <div class="panel">
                <div class="panel-footer">
                </div>
                <div class="pie">
                    <h2>就业行业</h2>
                    <div class="chart">
                    </div>
                </div>
            </div>
        </div>
        <div class="column">
            <div class="num">
                <div class="num-hd">
                    <ul>
                        <li v-for="item,index in items" :key="index">{{item}}</li>
                    </ul>
                </div>
                <div class="num-bd">
                    <ul>
                        <li>程序员需求人数</li>
                        <li>程序员供应人数</li>
                    </ul>
                </div>
            </div>
            <div class="map">
                <div class="map1"></div>
                <div class="map2"></div>
                <div class="map3"></div>
                <div class="chart"></div>
            </div>
        </div>
        <div class="column">
            <div class="panel">
                <div class="panel-footer">
                </div>
                <div class="bar2">
                    <h2>就业行业</h2>
                    <div class="chart">
                    </div>
                </div>
            </div>
            <div class="panel">
                <div class="panel-footer">
                </div>
                <div class="line2">
                    <h2>就业行业</h2>
                    <div class="chart">
                    </div>
                </div>
            </div>
            <div class="panel">
                <div class="panel-footer">
                </div>
                <div class="pie2">
                    <h2>就业行业</h2>
                    <div class="chart">
                    </div>
                </div>
            </div>
        </div>
    </div>
    </section>
</div>
{/block}
{block name="js"}
{js href="https://unpkg.com/vue@3/dist/vue.global.js,__JS__/echarts.min.js,__AD_JS__/china.js"}
<script type="text/javascript">
    const { createApp } = Vue
    createApp({
        data() {
            return {
                items: [125811,104563],
                nowTime:'',
                showstatus:true,
                option1:{
                    tooltip: {
                        trigger: 'item',
                        formatter: "{a} <br/>{b} : {c}万元"
                    },
                    legend: {
                        x: 'center',
                        y: '15%',
                        data: [ '张家口', '承德', '衡水','邢台', '邯郸', '保定','秦皇岛','石家庄', '唐山'],
                        icon: 'circle',
                        textStyle: {
                            color: '#fff',
                        }
                    },
                    calculable: true,
                    series: [{
                        name: '',
                        type: 'pie',
                        //起始角度，支持范围[0, 360]
                        startAngle: 0,
                        //饼图的半径，数组的第一项是内半径，第二项是外半径
                        radius: [41, 100.75],
                        //支持设置成百分比，设置成百分比时第一项是相对于容器宽度，第二项是相对于容器高度
                        center: ['50%', '40%'],
                        //是否展示成南丁格尔图，通过半径区分数据大小。可选择两种模式：
                        // 'radius' 面积展现数据的百分比，半径展现数据的大小。
                        //  'area' 所有扇区面积相同，仅通过半径展现数据大小
                        roseType: 'area',
                        //是否启用防止标签重叠策略，默认开启，圆环图这个例子中需要强制所有标签放在中心位置，可以将该值设为 false。
                        avoidLabelOverlap: false,
                        label: {
                            normal: {
                                show: true,
                                formatter: '{c}万元'
                            },
                            emphasis: {
                                show: true
                            }
                        },
                        labelLine: {
                            normal: {
                                show: true,
                                length2: 1,
                            },
                            emphasis: {
                                show: true
                            }
                        },
                        data: [{
                                value: 900.58,
                                name: '张家口',
                                itemStyle: {
                                    normal: {
                                        color: '#f845f1'
                                    }
                                }
                            },
                            {
                                value: 1100.58,
                                name: '承德',
                                itemStyle: {
                                    normal: {
                                        color: '#ad46f3'
                                    }
                                }
                            },
                            {
                                value: 1200.58,
                                name: '衡水',
                                itemStyle: {
                                    normal: {
                                        color: '#5045f6'
                                    }
                                }
                            },
                            {
                                value: 1300.58,
                                name: '邢台',
                                itemStyle: {
                                    normal: {
                                        color: '#4777f5'
                                    }
                                }
                            },
                            {
                                value: 1400.58,
                                name: '邯郸',
                                itemStyle: {
                                    normal: {
                                        color: '#44aff0'
                                    }
                                }
                            },
                            {
                                value: 1500.58,
                                name: '保定',
                                itemStyle: {
                                    normal: {
                                        color: '#45dbf7'
                                    }
                                }
                            },
                            {
                                value: 1500.58,
                                name: '秦皇岛',
                                itemStyle: {
                                    normal: {
                                        color: '#f6d54a'
                                    }
                                }
                            },
                            {
                                value: 1600.58,
                                name: '石家庄',
                                itemStyle: {
                                    normal: {
                                        color: '#f69846'
                                    }
                                }
                            },
                            {
                                value: 1800,
                                name: '唐山',
                                itemStyle: {
                                    normal: {
                                        color: '#ff4343'
                                    }
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            },
                            {
                                value: 0,
                                name: "",
                                itemStyle: {
                                    normal: {
                                        color: 'transparent'
                                    }
                                },
                                label: {
                                    show: false
                                },
                                labelLine: {
                                    show: false
                                }
                            }
                        ]
                    }]
                },
                option2:{
                    grid: {
                        top: "10%",
                        left: "22%",
                        bottom: "10%"
                            // containLabel: true
                    },
                    // 不显示x轴的相关信息
                    xAxis: {
                        show: false
                    },
                    yAxis: [{
                            type: "category",
                            inverse: true,
                            data: ["HTML5", "CSS3", "javascript", "VUE", "NODE"],
                            // 不显示y轴的线
                            axisLine: {
                                show: false
                            },
                            // 不显示刻度
                            axisTick: {
                                show: false
                            },
                            // 把刻度标签里面的文字颜色设置为白色
                            axisLabel: {
                                color: "#fff"
                            }
                        },
                        {
                            data: [702, 350, 610, 793, 664],
                            inverse: true,
                            // 不显示y轴的线
                            axisLine: {
                                show: false
                            },
                            // 不显示刻度
                            axisTick: {
                                show: false
                            },
                            // 把刻度标签里面的文字颜色设置为白色
                            axisLabel: {
                                color: "#fff"
                            }
                        }
                    ],
                    series: [{
                            name: "条",
                            type: "bar",
                            data: [70, 34, 60, 78, 69],
                            yAxisIndex: 0,
                            // 修改第一组柱子的圆角
                            itemStyle: {
                                barBorderRadius: 20,
                                // 此时的color 可以修改柱子的颜色
                                color: function(params) {
                                    // params 传进来的是柱子对象
                                    // console.log(params);
                                    var myColor = ["#1089E7","#F57474","#56D0E3","#F8B448","#8B78F6"];
                                    // dataIndex 是当前柱子的索引号
                                    return myColor[params.dataIndex];
                                }
                            },
                            // 柱子之间的距离
                            barCategoryGap: 50,
                            //柱子的宽度
                            barWidth: 10,
                            // 显示柱子内的文字
                            label: {
                                show: true,
                                position: "inside",
                                // {c} 会自动的解析为 数据  data里面的数据
                                formatter: "{c}%"
                            }
                        },
                        {
                            name: "框",
                            type: "bar",
                            barCategoryGap: 50,
                            barWidth: 15,
                            yAxisIndex: 1,
                            data: [100, 100, 100, 100, 100],
                            itemStyle: {
                                color: "none",
                                borderColor: "#00c1de",
                                borderWidth: 3,
                                barBorderRadius: 15
                            }
                        }
                    ]
                },
                option3:{
                    color: ['#00f2f1', '#ed3f35'],
                    tooltip: {
                        trigger: 'axis'
                    },
                    legend: {
                        data: ['新增游客 ', ' 新增粉丝 '],
                        textStyle: {
                            color: '#4c9bfd'
                        },
                        right: '10%'

                    },
                    grid: {
                        top: '20%',
                        left: '3%',
                        right: '4%',
                        bottom: '3%',
                        show: true,
                        borderColor: '#012f4a',
                        containLabel: true
                    },

                    xAxis: {
                        type: 'category',
                        boundaryGap: false,
                        data: ["1月",
                            "2月",
                            "3月",
                            "4月",
                            "5月",
                            "6月",
                            "7月",
                            "8月",
                            "9月",
                            "10月",
                            "11月",
                            "12月"
                        ],
                        axisTick: {
                            show: false
                        },
                        axisLabel: {
                            color: '#4c9bfd'
                        },
                        axisLine: {
                            show: false,
                        }


                    },
                    yAxis: {
                        type: 'value',
                        axisTick: {
                            show: false
                        },
                        axisLabel: {
                            color: '#4c9bfd'
                        },
                        axisLine: {
                            show: false,
                        },
                        splitLine: {
                            lineStyle: {
                                color: '#012f4a'
                            }
                        }
                    },
                    series: [{
                            name: '新增游客',
                            type: 'line',

                            smooth: true,
                            data: [24, 40, 101, 134, 90, 230, 210, 230, 120, 230, 210, 120]
                        },
                        {
                            name: '新增粉丝',
                            type: 'line',

                            smooth: true,
                            data: [40, 64, 191, 324, 290, 330, 310, 213, 180, 200, 180, 79]
                        }

                    ]
                },
                option4:{
                    color: ['#623ad1', '#3383fc'],
                    tooltip: {},
                    radar: [{
                        indicator: [{
                                text: '进样异常',
                                max: 100
                            },
                            {
                                text: '缺试剂A',
                                max: 100
                            },
                            {
                                text: '消解异常',
                                max: 100
                            },
                            {
                                text: '缺纯水',
                                max: 100
                            },
                            {
                                text: '缺试剂B',
                                max: 100
                            }
                        ],
                        center: ['50%', '60%'],
                        radius: '65%',
                        startAngle: 90,
                        name: {
                            formatter: '{value}',
                            textStyle: {
                                fontSize: 12, //外圈标签字体大小
                                color: '#FFF' //外圈标签字体颜色
                            }
                        },
                        splitArea: { // 坐标轴在 grid 区域中的分隔区域，默认不显示。
                            show: true,
                            areaStyle: { // 分隔区域的样式设置。
                                color: [], // 分隔区域颜色。分隔区域会按数组中颜色的顺序依次循环设置颜色。默认是一个深浅的间隔色。
                            }
                        },
                        axisLine: { //指向外圈文本的分隔线样式
                            lineStyle: {
                                color: '#24214e'
                            }
                        },
                        splitLine: {
                            lineStyle: {
                                color: '#24214e', // 分隔线颜色
                                width: 1, // 分隔线线宽
                            }
                        }
                    }, ],
                    series: [{
                        name: '雷达图',
                        type: 'radar',
                        data: [
                        {
                            name: '2016',
                            value: [85, 65, 55, 90, 82],
                            areaStyle: {
                                normal: { // 单项区域填充样式
                                    opacity: 1 // 区域透明度
                                }
                            },
                            symbolSize: 0, // 单个数据标记的大小，可以设置成诸如 10 这样单一的数字，也可以用数组分开表示宽和高，例如 [20, 10] 表示标记宽为20，高为10。
                        }, {
                            name: '2017',
                            value: [50, 80, 45, 30, 75],
                            symbolSize:0,
                            areaStyle: {
                                normal: { // 单项区域填充样式
                                    color: {
                                        type: 'linear',
                                        x: 0, //右
                                        y: 0, //下
                                        x2: 1, //左
                                        y2: 1, //上
                                        colorStops: [{
                                            offset: 0,
                                            color: '#3cd2f3'
                                        }, 
                                        {
                                            offset: 1,
                                            color: '#306eff'
                                        }],
                                        globalCoord: false
                                    },
                                    opacity: 1 // 区域透明度
                                    
                                }
                            },
                        }]
                    }]
                },
                option5:{
                    color:["#87cefa","#ff7f50","#32cd32","#da70d6"],
                    legend: {
                        y : 'bottom',
                        x : 'center',
                        icon: 'circle',
                        textStyle : {
                            color : '#ffffff'

                        },
                         // data : ['第一医院','中山医院','中医院','第五医院',],
                    },
                    tooltip : {
                        trigger: 'item',
                        formatter: "{a}<br/>{b}<br/>{c}G ({d}%)"
                    },
                    series : [{
                        name:'采集数据量',
                        type:'pie',
                        radius : ['40%', '70%'],
                        center : ['50%', '45%'],
                        itemStyle : {
                            normal : {
                                label : {
                                    show : false
                                },
                                labelLine : {
                                    show : false
                                }
                            },
                            emphasis : {
                                label : {
                                    show : true,
                                    position : 'center',
                                    textStyle : {
                                        fontSize : '16',
                                        fontWeight : 'bold'
                                    }
                                }
                            }
                        },
                        data:[
                            {value:335, name:'第一医院'},
                            {value:310, name:'中山医院'},
                            {value:234, name:'中医院'},
                            {value:135, name:'第五医院'}

                        ]
                    }]
                },
                option6:{
                    color: ['#006cff', '#60cda0', '#ed8884', '#ff9f7f', '#0096ff', '#9fe6b8', '#32c5e9', '#1d9dff'],
                    title: {

                        left: 'center'
                    },
                    tooltip: {
                        trigger: 'item',
                        formatter: '{a} <br/>{b} : {c} ({d}%)'
                    },
                    legend: {
                        left: 'center',
                        top: 'bottom',
                        data: ['rose1', 'rose2', 'rose3', 'rose4', 'rose5', 'rose6', 'rose7', 'rose8']
                    },

                    series: [{
                            name: "地区分布",
                            type: 'pie',
                            radius: ['10%', '70%'],
                            center: ['50%', '50%'],
                            roseType: 'radius',
                            label: {
                                show: true
                            },
                            emphasis: {
                                label: {
                                    show: true,
                                    fontSize: 10
                                }
                            },
                            labelLine: {
                                length: 6,
                                length2: 8
                            },
                            data: [
                                { value: 20, name: '云南' },
                                { value: 26, name: '北京' },
                                { value: 24, name: '山东' },
                                { value: 25, name: '河北' },
                                { value: 20, name: '江苏' },
                                { value: 25, name: '浙江' },
                                { value: 30, name: '四川' },
                                { value: 42, name: '湖北' }
                            ]
                        }

                    ]
                },
                option7:{

                }
            }
        },
        mounted() {
            setInterval(this.getTime, 1000);
            this.drawLine();
            this.initChart();
        },
        methods: {
            initChart() {
                // 基于准备好的dom，初始化echarts实例
                const myChart7 = echarts.init(document.querySelector(".map .chart"));
                const geoCoordMap = {
                    '上海': [121.4648, 31.2891],
                    '东莞': [113.8953, 22.901],
                    '东营': [118.7073, 37.5513],
                    '中山': [113.4229, 22.478],
                    '临汾': [111.4783, 36.1615],
                    '临沂': [118.3118, 35.2936],
                    '丹东': [124.541, 40.4242],
                    '丽水': [119.5642, 28.1854],
                    '乌鲁木齐': [87.9236, 43.5883],
                    '佛山': [112.8955, 23.1097],
                    '保定': [115.0488, 39.0948],
                    '兰州': [103.5901, 36.3043],
                    '包头': [110.3467, 41.4899],
                    '北京': [116.4551, 40.2539],
                    '北海': [109.314, 21.6211],
                    '南京': [118.8062, 31.9208],
                    '南宁': [108.479, 23.1152],
                    '南昌': [116.0046, 28.6633],
                    '南通': [121.1023, 32.1625],
                    '厦门': [118.1689, 24.6478],
                    '台州': [121.1353, 28.6688],
                    '合肥': [117.29, 32.0581],
                    '呼和浩特': [111.4124, 40.4901],
                    '咸阳': [108.4131, 34.8706],
                    '哈尔滨': [127.9688, 45.368],
                    '唐山': [118.4766, 39.6826],
                    '嘉兴': [120.9155, 30.6354],
                    '大同': [113.7854, 39.8035],
                    '大连': [122.2229, 39.4409],
                    '天津': [117.4219, 39.4189],
                    '太原': [112.3352, 37.9413],
                    '威海': [121.9482, 37.1393],
                    '宁波': [121.5967, 29.6466],
                    '宝鸡': [107.1826, 34.3433],
                    '宿迁': [118.5535, 33.7775],
                    '常州': [119.4543, 31.5582],
                    '广州': [113.5107, 23.2196],
                    '廊坊': [116.521, 39.0509],
                    '延安': [109.1052, 36.4252],
                    '张家口': [115.1477, 40.8527],
                    '徐州': [117.5208, 34.3268],
                    '德州': [116.6858, 37.2107],
                    '惠州': [114.6204, 23.1647],
                    '成都': [103.9526, 30.7617],
                    '扬州': [119.4653, 32.8162],
                    '承德': [117.5757, 41.4075],
                    '拉萨': [91.1865, 30.1465],
                    '无锡': [120.3442, 31.5527],
                    '日照': [119.2786, 35.5023],
                    '昆明': [102.9199, 25.4663],
                    '杭州': [119.5313, 29.8773],
                    '枣庄': [117.323, 34.8926],
                    '柳州': [109.3799, 24.9774],
                    '株洲': [113.5327, 27.0319],
                    '武汉': [114.3896, 30.6628],
                    '汕头': [117.1692, 23.3405],
                    '江门': [112.6318, 22.1484],
                    '沈阳': [123.1238, 42.1216],
                    '沧州': [116.8286, 38.2104],
                    '河源': [114.917, 23.9722],
                    '泉州': [118.3228, 25.1147],
                    '泰安': [117.0264, 36.0516],
                    '泰州': [120.0586, 32.5525],
                    '济南': [117.1582, 36.8701],
                    '济宁': [116.8286, 35.3375],
                    '海口': [110.3893, 19.8516],
                    '淄博': [118.0371, 36.6064],
                    '淮安': [118.927, 33.4039],
                    '深圳': [114.5435, 22.5439],
                    '清远': [112.9175, 24.3292],
                    '温州': [120.498, 27.8119],
                    '渭南': [109.7864, 35.0299],
                    '湖州': [119.8608, 30.7782],
                    '湘潭': [112.5439, 27.7075],
                    '滨州': [117.8174, 37.4963],
                    '潍坊': [119.0918, 36.524],
                    '烟台': [120.7397, 37.5128],
                    '玉溪': [101.9312, 23.8898],
                    '珠海': [113.7305, 22.1155],
                    '盐城': [120.2234, 33.5577],
                    '盘锦': [121.9482, 41.0449],
                    '石家庄': [114.4995, 38.1006],
                    '福州': [119.4543, 25.9222],
                    '秦皇岛': [119.2126, 40.0232],
                    '绍兴': [120.564, 29.7565],
                    '聊城': [115.9167, 36.4032],
                    '肇庆': [112.1265, 23.5822],
                    '舟山': [122.2559, 30.2234],
                    '苏州': [120.6519, 31.3989],
                    '莱芜': [117.6526, 36.2714],
                    '菏泽': [115.6201, 35.2057],
                    '营口': [122.4316, 40.4297],
                    '葫芦岛': [120.1575, 40.578],
                    '衡水': [115.8838, 37.7161],
                    '衢州': [118.6853, 28.8666],
                    '西宁': [101.4038, 36.8207],
                    '西安': [109.1162, 34.2004],
                    '贵阳': [106.6992, 26.7682],
                    '连云港': [119.1248, 34.552],
                    '邢台': [114.8071, 37.2821],
                    '邯郸': [114.4775, 36.535],
                    '郑州': [113.4668, 34.6234],
                    '鄂尔多斯': [108.9734, 39.2487],
                    '重庆': [107.7539, 30.1904],
                    '金华': [120.0037, 29.1028],
                    '铜川': [109.0393, 35.1947],
                    '银川': [106.3586, 38.1775],
                    '镇江': [119.4763, 31.9702],
                    '长春': [125.8154, 44.2584],
                    '长沙': [113.0823, 28.2568],
                    '长治': [112.8625, 36.4746],
                    '阳泉': [113.4778, 38.0951],
                    '青岛': [120.4651, 36.3373],
                    '韶关': [113.7964, 24.7028]
                };

                const XAData = [
                    [{ name: '西安' }, { name: '北京', value: 100 }],
                    [{ name: '西安' }, { name: '上海', value: 100 }],
                    [{ name: '西安' }, { name: '广州', value: 100 }],
                    [{ name: '西安' }, { name: '西宁', value: 100 }],
                    [{ name: '西安' }, { name: '银川', value: 100 }]
                ];

                const XNData = [
                    [{ name: '西宁' }, { name: '北京', value: 100 }],
                    [{ name: '西宁' }, { name: '上海', value: 100 }],
                    [{ name: '西宁' }, { name: '广州', value: 100 }],
                    [{ name: '西宁' }, { name: '西安', value: 100 }],
                    [{ name: '西宁' }, { name: '银川', value: 100 }]
                ];

                const YCData = [
                    [{ name: '银川' }, { name: '北京', value: 100 }],
                    [{ name: '银川' }, { name: '广州', value: 100 }],
                    [{ name: '银川' }, { name: '上海', value: 100 }],
                    [{ name: '银川' }, { name: '西安', value: 100 }],
                    [{ name: '银川' }, { name: '西宁', value: 100 }],
                ];

                const planePath = 'path://M1705.06,1318.313v-89.254l-319.9-221.799l0.073-208.063c0.521-84.662-26.629-121.796-63.961-121.491c-37.332-0.305-64.482,36.829-63.961,121.491l0.073,208.063l-319.9,221.799v89.254l330.343-157.288l12.238,241.308l-134.449,92.931l0.531,42.034l175.125-42.917l175.125,42.917l0.531-42.034l-134.449-92.931l12.238-241.308L1705.06,1318.313z';
                //var planePath = 'arrow';
                const convertData = function(data) {

                    var res = [];
                    for (var i = 0; i < data.length; i++) {

                        const dataItem = data[i];

                        const fromCoord = geoCoordMap[dataItem[0].name];
                        const toCoord = geoCoordMap[dataItem[1].name];
                        if (fromCoord && toCoord) {
                            res.push({
                                fromName: dataItem[0].name,
                                toName: dataItem[1].name,
                                coords: [fromCoord, toCoord],
                                value: dataItem[1].value
                            });
                        }
                    }
                    return res;

                };

                const color = ['#fff']; //航线的颜色
                const series = [];
                [
                    ['西安', XAData],
                    ['西宁', XNData],
                    ['银川', YCData]
                ].forEach(function(item, i) {
                    series.push({
                        name: item[0] + ' Top3',
                        type: 'lines',
                        zlevel: 2,
                        effect: {
                            show: true,
                            period: 4, //箭头指向速度，值越小速度越快
                            trailLength: 0.02, //特效尾迹长度[0,1]值越大，尾迹越长重
                            symbol: 'arrow', //箭头图标
                            symbolSize: 5, //图标大小
                        },
                        lineStyle: {
                            normal: {
                                width: 1, //尾迹线条宽度
                                opacity: 1, //尾迹线条透明度
                                curveness: .3 //尾迹线条曲直度
                            }
                        },
                        data: convertData(item[1])
                    }, {
                        name: item[0] + ' Top3',
                        type: 'lines',
                        zlevel: 2,
                        symbol: ['none', 'arrow'],
                        symbolSize: 10,
                        effect: {
                            show: true,
                            period: 6,
                            trailLength: 0,
                            symbol: planePath,
                            symbolSize: 15
                        },
                        lineStyle: {
                            normal: {
                                color: '#fff',
                                width: 1,
                                opacity: 0.6,
                                curveness: 0.2
                            }
                        },
                        data: convertData(item[1])
                    }, {
                        name: item[0] + ' Top3',
                        type: 'effectScatter',
                        coordinateSystem: 'geo',
                        zlevel: 2,
                        rippleEffect: {
                            brushType: 'stroke'
                        },
                        label: {
                            normal: {
                                show: true,
                                position: 'right',
                                formatter: '{b}'
                            }
                        },
                        symbolSize: function(val) {
                            return val[2] / 8;
                        },
                        itemStyle: {
                            normal: {
                                color: '#fff',
                            },
                            emphasis: {
                                areaColor: '#fff'
                            }
                        },
                        data: item[1].map(function(dataItem) {
                            return {
                                name: dataItem[1].name,
                                value: geoCoordMap[dataItem[1].name].concat([dataItem[1].value])
                            };
                        })
                    });
                });
                const option = {
                    tooltip: {
                        trigger: 'item',
                        formatter: function(params, ticket, callback) {
                            if (params.seriesType == "effectScatter") {
                                return "线路：" + params.data.name + "" + params.data.value[2];
                            } else if (params.seriesType == "lines") {
                                return params.data.fromName + ">" + params.data.toName + "<br />" + params.data.value;
                            } else {
                                return params.name;
                            }
                        }
                    },
                    tooltip: {
                        trigger: 'item',
                        formatter: function(params, ticket, callback) {
                            if (params.seriesType == "effectScatter") {
                                return "线路：" + params.data.name + "" + params.data.value[2];
                            } else if (params.seriesType == "lines") {
                                return params.data.fromName + ">" + params.data.toName + "<br />" + params.data.value;
                            } else {
                                return params.name;
                            }
                        }
                    },
                    legend: {
                        orient: 'vertical',
                        top: 'bottom',
                        left: 'right',
                        data: ['西安 Top3', '西宁 Top3', '银川 Top3'],
                        textStyle: {
                            color: '#fff'
                        },
                        selectedMode: 'multiple'
                    },
                    geo: {
                        map: 'china',
                        zoom: 1.2,
                        label: {
                            emphasis: {
                                show: false
                            }
                        },
                        roam: true,
                        itemStyle: {
                            normal: {
                                areaColor: 'rgba(24, 109, 212,0.7)',
                                borderColor: 'rgba(255, 255, 253)'
                            },
                            emphasis: {
                                areaColor: 'rgba(43, 145, 183)'
                            }
                        }
                    },
                    series: series
                };
                // 使用刚指定的配置项和数据显示图表。
                myChart7.setOption(option);
                window.addEventListener("resize", function () {
                    myChart7.resize();
                });
            },
            drawLine() {
                // 基于准备好的dom，初始化echarts实例
                let myChart1 = echarts.init(document.querySelector(".bar .chart"));
                myChart1.setOption(this.option1);
                window.addEventListener("resize", function() {
                    myChart1.resize();
                });
                // 柱状图2
                var myChart2 = echarts.init(document.querySelector(".bar2 .chart"));
                myChart2.setOption(this.option2);
                window.addEventListener("resize", function() {
                    myChart2.resize();
                });

                var myChart3 = echarts.init(document.querySelector(".line .chart"));
                myChart3.setOption(this.option3);
                window.addEventListener("resize", function() {
                    myChart3.resize();
                });
                //折线图波浪图
                myChart4 = echarts.init(document.querySelector(".line2 .chart"));
                myChart4.setOption(this.option4);
                window.addEventListener("resize", function() {
                    myChart4.resize();
                });

                var myChart5 = echarts.init(document.querySelector(".pie .chart"));
                myChart5.setOption(this.option5);
                window.addEventListener("resize", function() {
                    myChart5.resize();
                });

                var myChart6 = echarts.init(document.querySelector(".pie2 .chart"));
                myChart6.setOption(this.option6);
                window.addEventListener("resize", function() {
                    myChart6.resize();
                });

                
            },
            getTime(){
                var myDate = new Date();
                var myYear = myDate.getFullYear(); //获取完整的年份(4位,1970-????)
                var myMonth = myDate.getMonth()+1; //获取当前月份(0-11,0代表1月)
                var myToday = myDate.getDate(); //获取当前日(1-31)
                var myDay = myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
                var myHour = myDate.getHours(); //获取当前小时数(0-23)
                var myMinute = myDate.getMinutes(); //获取当前分钟数(0-59)
                var mySecond = myDate.getSeconds(); //获取当前秒数(0-59)
                var week = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
                this.nowTime = myYear+'年'+this.fillZero(myMonth)+'月'+this.fillZero(myToday)+'日'+' '+this.fillZero(myHour)+':'+this.fillZero(myMinute)+':'+this.fillZero(mySecond)+' '+week[myDay]+' ';
            },
            fillZero(str){
                var realNum;
                if(str<10){
                    realNum = '0'+str;
                }else{
                    realNum = str;
                }
                return realNum;
            },
            fullScreen() {
                this.showstatus = false;
                var el = document.getElementById('app')
                var rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen,  
                    wscript;  
                if(typeof rfs != "undefined" && rfs) {  ////////
                    rfs.call(el);  
                    return;  
                } 
                if(typeof window.ActiveXObject != "undefined") {  
                    wscript = new ActiveXObject("WScript.Shell");  
                    if(wscript) {  
                        wscript.SendKeys("{F11}");  
                    }  
                }
            },
            //退出全屏
            exitFullScreen() {
                this.showstatus = true;
                var el= document,  
                    cfs = el.cancelFullScreen || el.webkitCancelFullScreen || el.mozCancelFullScreen || el.exitFullScreen,  
                    wscript;  
                if (typeof cfs != "undefined" && cfs) {  
                  cfs.call(el);  
                  return;  
                }
                if (typeof window.ActiveXObject != "undefined") {  
                    wscript = new ActiveXObject("WScript.Shell");  
                    if (wscript != null) {  
                        wscript.SendKeys("{F11}");  
                    }  
                }
            },
            checks(e){
                var yearData3 = [{
                    year: "2020",
                    data: [
                        [24, 40, 101, 134, 90, 230, 210, 230, 120, 230, 210, 120],
                        [40, 64, 191, 324, 290, 330, 310, 213, 180, 200, 180, 79]
                    ]
                }, {
                    year: "2021", // 年份
                    data: [
                        // 两个数组是因为有两条线
                        [123, 175, 112, 197, 121, 67, 98, 21, 43, 64, 76, 38],
                        [143, 131, 165, 123, 178, 21, 82, 64, 43, 60, 19, 34]
                    ]
                }];
                var obj = yearData3[e];
                this.option3.series[0].data = obj.data[0];
                this.option3.series[1].data = obj.data[1];
                var myChart3 = echarts.init(document.querySelector(".line .chart"));
                myChart3.setOption(this.option3);
            },
            convertData(data) {
                const res = [];
                for (let i = 0; i < data.length; i++) {
                    const dataItem = data[i];
                    const fromCoord = this.geoCoordMap[dataItem[0].name];
                    const toCoord = this.geoCoordMap[dataItem[1].name];
                    if (fromCoord && toCoord) {
                        res.push({
                            fromName: dataItem[0].name,
                            toName: dataItem[1].name,
                            coords: [fromCoord, toCoord]
                        });
                    }
                }
              return res;

            }
            // convertData(data) {
            //     var res = [];
            //     for (var i = 0; i < data.length; i++) {

            //         var dataItem = data[i];

            //         var fromCoord = geoCoordMap[dataItem[0].name];
            //         var toCoord = geoCoordMap[dataItem[1].name];
            //         if (fromCoord && toCoord) {
            //             res.push({
            //                 fromName: dataItem[0].name,
            //                 toName: dataItem[1].name,
            //                 coords: [fromCoord, toCoord],
            //                 value: dataItem[1].value
            //             });
            //         }
            //     }
            //     return res;

            // }
        }
    }).mount('#app')
 </script>
{/block}